package com.example.entity;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

public class FLTrainingRound implements Serializable {
    private static final long serialVersionUID = 1L;

    /** 自增主键 */
    private Long roundId;

    /** 关联任务ID */
    private String taskId;

    /** 当前轮次数 */
    private Integer roundNumber;
    private Integer batchSize;    // 新增字段

    public Integer getBatchSize() {
        return batchSize;
    }

    public void setBatchSize(Integer batchSize) {
        this.batchSize = batchSize;
    }

    /** 训练准确率 */
    private BigDecimal trainAcc;

    /** 测试准确率 */
    private BigDecimal testAcc;

    /** 参与者列表 */
    private List<String> participants;

    /** 开始时间 */
    private LocalDateTime startTime;

    /** 结束时间 */
    private LocalDateTime endTime;

    // Getters and Setters
    public Long getRoundId() {
        return roundId;
    }

    public void setRoundId(Long roundId) {
        this.roundId = roundId;
    }

    public String getTaskId() {
        return taskId;
    }

    public void setTaskId(String taskId) {
        this.taskId = taskId;
    }

    public Integer getRoundNumber() {
        return roundNumber;
    }

    public void setRoundNumber(Integer roundNumber) {
        this.roundNumber = roundNumber;
    }

    public BigDecimal getTrainAcc() {
        return trainAcc;
    }

    public void setTrainAcc(BigDecimal trainAcc) {
        this.trainAcc = trainAcc;
    }

    public BigDecimal getTestAcc() {
        return testAcc;
    }

    public void setTestAcc(BigDecimal testAcc) {
        this.testAcc = testAcc;
    }

    public List<String> getParticipants() {
        return participants;
    }

    public void setParticipants(List<String> participants) {
        this.participants = participants;
    }

    public LocalDateTime getStartTime() {
        return startTime;
    }

    public void setStartTime(LocalDateTime startTime) {
        this.startTime = startTime;
    }

    public LocalDateTime getEndTime() {
        return endTime;
    }

    public void setEndTime(LocalDateTime endTime) {
        this.endTime = endTime;
    }
}
